package com.biz.primus.model.oms.enums;

import com.biz.primus.common.enums.EnumerableValue;
import com.biz.primus.common.enums.converter.BaseEnumValueConverter;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 *
 * oms订单状态:
 *      新订单 - 已分单 - 已打单 - 已出库 - 已完成
 *                \       /
 *                 <-----(改派)
 *
 * @author yanweijin
 * @date 2017/10/21
 */

@AllArgsConstructor
@Getter
public enum OrderState implements EnumerableValue{



	/**
	 * 线上订单初始状态
	 */
	begin(0, "新订单"),
	/**
	 * 系统分单之后的状态
	 */
	allocated(5,"已分单"),
	/**
	 * POS打印订单之后的状态
	 */
	printed(10, "已打单"),
	/**
	 * POS操作出库之后
	 */
	outbound(15,"已出库"),
	/**
	 * 签收之后
	 */
	finished(50,"已完成")

	;

	public static class Converter extends BaseEnumValueConverter<OrderState> {}

	private final int value;
	private final String desc;

}
